package com.unbox.common.configuration.redis;

/**
 * 定义缓存接口
 * @author 王振宇
 */
public interface UnboxCache {

    /**
     * 缓存默认过期时间
     */
    int DEFAULT_DELETE_TIME = 1000 * 60 * 5;

    /**
     * 获取指定key值
     * @param key
     * @return
     */
    Object get(Object key);

    /**
     * 存值
     * @param key
     * @param value
     */
    void set(Object key, String value);

    /**
     * 存值可过期
     * @param key
     * @param value
     * @param time 毫秒
     */
    void set(Object key, String value, int time);

    /**
     * 验证key
     * @param key
     * @return
     */
    boolean hasKey(Object key);

    /**
     * 批量删除
     * @param key
     * @return
     */
    boolean deleteBatch(Object key);

    /**
     * 删除key
     * @param key
     * @return
     */
    boolean delete(Object key);
}
